Method and apparatus for video transmission

ABSTRACT

An objective of the present invention is to provide a method and apparatus for video transmission, wherein the video is initially stored in one or more other network devices. The method comprises receiving a second request for a video from a user equipment; forwarding the second request to other network device corresponding to the second request; determining a manner of obtaining the video based on a response, received from the other network device, to the second request; and transmitting the video obtained based on the manner of obtaining the video to the user equipment. Compared with the prior art, by uniformly determining a manner of obtaining a video and transmitting the obtained video to the user equipment the present invention, the present invent on lowers deployment difficulty, reduces bandwidth resource demands, and enhances the video sharing degree.

FIELD OF THE INVENTION

The present invention relates to the technical field of communicationsnetwork, and more specifically to a method and apparatus for videotransmission.

BACKGROUND OF THE INVENTION

Currently, a mobile subscriber needs to access a video service providerplatform via the network of a mobile operator to retrieve a videoprogram. However, this manner will result in considerable bandwidthconsumption between the network of a mobile operator and a video serviceprovider platform. In order to solve this problem, each video serviceprovider will generally deploy an Edge CDN (Edge Content DeliveryNetwork) node in the network of a mobile operator, respectively, whichEdge CDN node may be used for buffering a video content that isfrequently accessed, such that the Edge CDN node may directly providethe video content to a mobile subscriber without communication with thevideo service provider platform needed. However, this solution has someproblems. For example, each video service provider needs to deploy EdgeCDN nodes in the network of a mobile operator respectively, whichincreases the deployment cost and easily causes a deployment problem;respective Edge CDN nodes only communicate with respective video serviceproviders, there lacks interaction between the respective Edge CDN nodessuch that for the same video, it is still needed to be buffered in eachEdge CDN nodes, respectively, which causes wastes of storage space.Therefore, during the video transmitting process, it is a problem thatneeds to be solved regarding how to lower the deployment difficulty,reduce bandwidth resource demands, and increase sharing.

SUMMARY OF THE INVENTION

An objective of the present invention is to provide a method andapparatus for video transmission.

According to one aspect of the present invention, there is provided amethod for video transmission, wherein the video is initially stored inone or more other network devices, wherein the method comprises:

receiving a second request for a video from a user equipment;

forwarding the second request to other network device corresponding tothe second request;

determining an obtaining manner for the video based on a response to thesecond request as received from the other network device;

sending the video obtained based on said obtaining manner for the videoto the user equipment.

According to another aspect of the present invention, there is providedan apparatus for video transmission, wherein the video is initiallystored in one or more other network devices, wherein the apparatuscomprises:

a module configured to receive a second request for a video from a userequipment;

a module configured to forward the second request to other networkdevice corresponding to the second request;

a module configured to determine an obtaining manner for the video basedon a response to the second request as received from the other networkdevice;

a module configured to send the video obtained based on the obtainingmanner for the video to the user equipment.

Compared with the prior art, the present invention determines a uniformretrieving manner of a video and transmits the retrieved video to theuser equipment, which lowers the deployment difficulty, reducesbandwidth resource demands, and increases video sharing.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS

Other features, objectives, and advantages will become more apparent byreading detailed depictions of non-limiting embodiments with referenceto the accompanying drawings:

FIG. 1 is a flow diagram illustrating a method for video transmissionaccording to an embodiment in one aspect of the present invention;

FIG. 2 illustrates an instance of a method for video transmissionaccording to one aspect of the present invention;

FIG. 3 is a schematic diagram of an apparatus for video transmissionaccording to an embodiment in another aspect of the present invention.

In the drawings, like reference numerals represent same or correspondingcomponents.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Hereinafter, the present invention will be described in detail withreference to the accompanying drawings.

FIG. 1 illustrating a flow diagram of a method for video transmissionaccording to one aspect of the present invention.

The method may be implemented on a network device. Here, the networkdevice includes, but not limited to, a computer, a network host, asingle network server, or a cloud consisting of a plurality of networkserver clusters or a plurality of servers. Here, the cloud consists of alarge number of computers or network servers based on cloud computing,wherein the cloud computing is a kind of distributive computing, i.e., avirtual supercomputer consisting of a group of loosely coupled computerclusters. The network includes, but not limited to, the Internet, a widearea network, a metropolitan area network, a local area network, a VPNnetwork, and an Ad Hoc network, etc.

Besides, in the context of the present disclosure, a user equipment maybe any kind of electronic device that can directly or indirectlycommunicate with a network device, including, but not limited to: adesktop computer, a portable computer, a mobile phone, a PDA, etc.

In the context of the present disclosure, other network device refers toother network device than the network device implementing the presentmethod, including, but not limited to a computer, a network host, asingle network server, or a cloud consisting of a plurality of networkserver clusters or a plurality of servers. Here, the cloud consists of alarge number of computers or network servers based on cloud computing,wherein the cloud computing is a kind of distributive computing, i.e., avirtual supercomputer consisting of a group of loosely coupled computerclusters. The network includes, but not limited to, the Internet, a widearea network, a metropolitan area network, a local area network, a VPNnetwork, and an Ad Hoc network, etc.

It should be noted that a video is initially stored in one or more othernetwork devices.

In an instance of network deployment, a user equipment is a mobileterminal, and the network device implementing the method of the presentinvention may be located within a mobile carrier network, while theother network device mentioned above may be located within other videoservice provider network. Those skilled in the art should understandthat relevant depictions about the network deployment are onlyexemplary, not limitative. Various kinds of other network deploymentmanners are existent without departing from the spirit or scope of thepresent invention, which are incorporated here by reference.

First, in step S11, a network device receives a second request for avideo from a user equipment. Specifically, the user equipment maytransmit the second request for the video to the network device via anetwork or via a specific interface with the network device. Forexample, the user equipment may transmit the second request foraccessing the video in a form of http request to the network device viathe network. Correspondingly, the network device receives the secondrequest for the video from the user equipment via the network or via thespecific interface with the user equipment. For example, the networkdevice may receive the second request in the form of http request asmentioned above via the network. Those skilled in the art shouldunderstand that here, relevant depictions regarding receiving, by thenetwork device, the second request for a video from the user equipmentare only exemplary, not limitative. Various kinds of otherimplementation manners are existent without departing from the spirit orscope of the present invention, which are incorporated here byreference.

In an embodiment, the network device receives the second request for thevideo from the user equipment, the second request being transmittedbased on a response of other network device to a first request by theuser equipment for the video of the other network device. Hereinafter,it will be further depicted with reference to FIG. 2.

Next, in step S12, the network device forwards the second request forthe video from the user equipment to other network device correspondingto the second request. Here, the other network device corresponding tothe second request may be other network device from which the userequipment desires to be capable of obtaining the requested video. Forexample, the user equipment desires to be capable of obtaining the videofrom other network device 0D1; then the user equipment may include theaddress of the other network device 0D1 in the second request andtransmits to the network device; then the network device may forward therequest to the other network device 0D1 corresponding to the secondrequest according to the address of the other network device 0D1included in the second request.

In an embodiment, what is received by the network device is a secondrequest for the video from the user equipment, the second request beingtransmitted based on a response of other network device to the firstrequest by the user equipment for the video on the other network device.Then, the other network device corresponding to the second request hererefers to the other network device to which the first request for thevideo from the user equipment is transmitted. Hereinafter, it will befurther described with reference to FIG. 2.

Next, in step S13, the network device determines a manner of obtainingthe video based on a response to the second request, received from theother network device. Here, the manner of obtaining the video includesany one of the following: obtaining the video locally from the networkdevice; obtaining the video from the other network device. Specifically,after the network device forwards the second request for the video fromthe user equipment to the other network device, the other network devicewill transmit a response to the second request to the network device.The response may include relevant information about the requested video,e.g., title of the video, serial number of the video, etc. The networkdevice obtains the relevant information about the requested video fromthe response to determine whether the video is locally stored. When thenetwork device determines that the video is locally stored, the networkdevice determines to obtain the video locally; when the network devicedetermines that the video is not stored locally, the network devicedetermines to obtain the video from said other network.

In an embodiment, the network device first determines identificationinformation of the video based on a response to the second request,received from the other network device. In an embodiment, the othernetwork device may include relevant information of the video, e.g., thetitle of the video and the serial number of the video, in the response.Then, the network device may obtain the relevant information of thevideo through the response and use the relevant information asidentification information of the video. In a preferred embodiment, theresponse to the second request includes video header information of thevideo, wherein the video header information includes video content.Then, the network device may obtain the video header information of thevideo through the response and obtains a video content with a firstlength from the video header information. Next, the network deviceperforms Hash calculation to the video content with the first length toobtain a Hash value that may uniquely identify the video, and uses theHash value as the identification information of the video. It should benoted that for the same video, it may have a different video title orvideo number or other relevant information in a different other networkdevice. Therefore, respective responses of respective other networkdevices to the second request for the video may include mutuallydifferent relevant information. In other words, the relevant informationof the video cannot maintain unique among a plurality of other networkdevices. On the contrary, because video contents of the same videostored in respective other network devices are identical, the Hash valueobtained from performing Hash calculation to the video content with thefirst length is identification information of the video which maintainsunique among a plurality of other network devices.

Here, the first length may be preset and adjusted according to actualneeds. In a preferred embodiment, the network device may also set avalue of the first length according to a video type. For example, thenetwork device may set the first length to be 500 bytes for the videotype of MP4 format, while set the first length to be 300 bytes for thevideo type of FLV format. Those skilled in the art should understandthat relevant depictions of the video type and the first length are onlyexemplary, not limitative. Various kinds of other video types and thevalues of first length are existent without departing from the spirit orscope of the present invention, which are incorporated here byreference.

Next, the network device determines whether the video is stored locallyin the network device based on the identification information. Forexample, the network device may determine whether the local storageincludes a video corresponding to the identification information byquerying the local storage. Then, the network device determines themanner of obtaining the video based on the result of determining whetherthe video is stored locally in the network device. Specifically, whenthe network device determines that the video is stored locally in thenetwork device, the network device determines to obtain the video fromthe local; when the network device determines that the video is notstored locally in the network device, the network device determines toobtain the video from the other network device.

In an embodiment, the network device may store the video locally basedon the times of the second request by respective user equipments for thevideo within a first time threshold and based on the identificationinformation. Specifically, when the times of the second request byrespective user equipments for the video exceeds a certain specificthreshold A within the first time threshold, the network device maystore the video locally. Moreover, the network device makes the locallystored video exactly correspond to the identification information, suchthat the locally stored video may be queried according to theidentification information. By locally storing the frequently requestedvideo, the network device may obtain the video from the local andprovide it to the user equipment, without a need of further obtainingthe video from other network device. It should be noted that asmentioned above, the identification information may uniquely identifythe video among a plurality of other network devices. For example, theplurality of other network devices belong to different video serviceproviders, respectively; then when respective user equipments frequentlyrequest a video service provider A for the video, the network device maylocally store the video. Further, when subsequently a user equipmentrequests a video service provider B for the video, the network deviceneedn't request the video service provider B for the video; instead, thevideo may be obtained locally and provided to the user equipment.Therefore, compared with the prior art, the present invention increasesshare degree and further reduces bandwidth demand while reducing thedifficulty of network deployment.

Here, the first time threshold and the specific threshold A mentionedabove may be preset and may be dynamically adjusted according to actualneeds.

In a further embodiment, the network device deletes the video from thelocal based on times of the second request by respective user equipmentsfor the video within a second time threshold and based on theidentification information. Specifically, when the times of the secondrequest by respective user equipments for the video within the secondtime threshold is less than a certain specific threshold B, the networkdevice deletes the video corresponding to the identification informationfrom the local. Here, the second time threshold and the specificthreshold B mentioned above may be preset and may be dynamicallyadjusted according to actual needs.

FIG. 2 illustrates an instance of a method for video transmissionaccording to one aspect of the present invention. In this example, thenetwork device D1 will receive a second request for a video V1 from theuser equipment UE1, the second request being transmitted based on aresponse of other network device 0D2 to a first request by the userequipment UE1 for the video V1 on the other network device 0D2.

First, in step S21, the user equipment UE1 may transmit a first requestfor a video V1 on the other network device 0D2 to the network device 0D2via a network or via a specific interface with the other network device0D2. The first request for example may be a http request.

In step S22, the other network device 0D2 may transmit a response to thefirst request to the user equipment UE1 via the network or via thespecific interface with the user equipment UE1. The response may includean address that is connected to the network device D1 directly or by wayof for example being redirected. For example, the response may include adynamic URL that may be redirected to the network device D1.

In step S23, the user equipment UE1 transmits a second request for thevideo V1 to the network device D1 according to the method above based onthe address connectable to the network device D1 included in theresponse.

In step S24, the network device D1 forwards the second request to othernetwork device corresponding to the second request. Here, the othernetwork device corresponding to the second request refers to othernetwork device to which the first request by the user equipment UE1 forthe video V1 is transmitted, i.e., other network device 0D2. In thisexample, the network device D1 forwards the second request to the othernetwork device 0D2 according to the method above.

Next, in step S25, the other network device 0D2 transmits a response tothe second request to the network device D1 according to the methodabove, the response including video header information of the video V1,the video header information including video content of the video V1.

In step S26, the network device D1 obtains the video content of thevideo with a first length from the video header information included inthe response according to the method above based on the response to thesecond request received from the other network device 0D2, performs Hashcalculation to the video content, and determines the obtained Hash valueas identification information of the video V1. Next, the network deviceD1 determines whether the video V1 is stored locally according to themethod above based on the identification information. Moreover, thenetwork device D1 determines a manner of obtaining the video V1 based ona result of determining whether the video V1 is stored locally. In otherwords, when the video V1 is stored locally, it is determined to obtainthe video V1 from its local storage; while when the video V1 is notstored locally, it is determined to obtain the video V1 from the othernetwork device 0D2.

In this example, supposing that the network device D1 determines thatthe video V1 is stored locally, it is determined that the video V1 isobtained locally.

Next, in step S27, the network device D1 transmits the video V1 obtainedlocally to the user equipment UE1.

FIG. 3 illustrates a schematic diagram of an apparatus for videotransmission according to another aspect of the present invention.

The apparatus may be implemented in a network device. Here, The methodmay be implemented on a network device. Here, the network deviceincludes, but not limited to, a computer, a network host, a singlenetwork server, or a cloud consisting of a plurality of network serverclusters or a plurality of servers. Here, the cloud consists of a largenumber of computers or network servers based on cloud computing, whereinthe cloud computing is a kind of distributive computing, i.e., a virtualsupercomputer consisting of a group of loosely coupled computerclusters. The network includes, but not limited to, the Internet, a widearea network, a metropolitan area network, a local area network, a VPNnetwork, and an Ad Hoc network, etc.

Besides, in the context of the present disclosure, a user equipment maybe any kind of electronic device that can directly or indirectlycommunicate with a network device, including, but not limited to: adesktop computer, a portable computer, a mobile phone, a PDA, etc.

In the context of the present disclosure, other network device refers toother network device than the network device implementing the presentmethod, including, but not limited to a computer, a network host, asingle network server, or a cloud consisting of a plurality of networkserver clusters or a plurality of servers. Here, the cloud consists of alarge number of computers or network servers based on cloud computing,wherein the cloud computing is a kind of distributive computing, i.e., avirtual supercomputer consisting of a group of loosely coupled computerclusters. The network includes, but not limited to, the Internet, a widearea network, a metropolitan area network, a local area network, a VPNnetwork, and an Ad Hoc network, etc.

It should be noted that a video is initially stored in one or more othernetwork devices.

In an instance of network deployment, a user equipment is a mobileterminal, and the network device implementing the method of the presentinvention may be located within a mobile carrier network, while theother network device mentioned above may be located within other videoservice provider network. Those skilled in the art should understandthat relevant depictions about the network deployment are onlyexemplary, not limitative. Various kinds of other network deploymentmanners are existent without departing from the spirit or scope of thepresent invention, which are incorporated here by reference.

As illustrated in FIG. 3, the apparatus for video transmission accordingto another aspect of the present invention comprises a module 31configured to receive a second request for a video from a user equipment(hereinafter referred to as a request receiving module 31); a module 32configured to forward the second request to other network devicecorresponding to the second request (hereinafter referred to a requestforwarding module 32); a module 33 configured to determine a manner ofobtaining the video based on a response, received from the other networkdevice, to the second request (hereinafter referred to as a firstdetermining module 33); and a module 34 configured to transmit theobtained video to the user equipment based on the manner of obtainingthe video (hereinafter referred to as a transmitting module 34).

First, the request receiving module 31 receives a second request for avideo from a user equipment. Specifically, the user equipment maytransmit the second request for the video to the network device via anetwork or via a specific interface with the network device. Forexample, the user equipment may transmit the second request foraccessing the video in a form of http request to the network device viathe network. Correspondingly, the network device receives the secondrequest for the video from the user equipment via the network or via thespecific interface with the user equipment. For example, the requestreceiving module 31 may receive the second request in the form of httprequest as mentioned above via the network. Those skilled in the artshould understand that here, relevant depictions regarding receiving, bythe request receiving module 31, the second request for a video from theuser equipment are only exemplary, not limitative. Various kinds ofother implementation manners are existent without departing from thespirit or scope of the present invention, which are incorporated here byreference.

In an embodiment, the request receiving module 31 receives the secondrequest for the video from the user equipment, the second request beingtransmitted based on a response of other network device to a firstrequest by the user equipment for the video of the other network device.Hereinafter, it will be further depicted with reference to FIG. 2.

Next, the request forwarding module 32 forwards the second request forthe video from the user equipment to other network device correspondingto the second request. Here, the other network device corresponding tothe second request may be other network device from which the userequipment desires to be capable of obtaining the requested video. Forexample, the user equipment desires to be capable of obtaining the videofrom other network device 0D1; then the user equipment may include theaddress of the other network device 0D1 in the second request andtransmits to the network device; then the request forwarding module 32may forward the request to the other network device 0D1 corresponding tothe second request according to the address of the other network device0D1 included in the second request.

In an embodiment, what is received by the request receiving module 31 isa second request for the video from the user equipment, the secondrequest being transmitted based on a response of other network device tothe first request by the user equipment for the video on the othernetwork device. Then, the other network device corresponding to thesecond request here refers to the other network device to which thefirst request for the video from the user equipment is transmitted.Hereinafter, it will be further described with reference to FIG. 2.

Next, the first determining module 33 determines a manner of obtainingthe video based on a response to the second request, received from theother network device. Here, the manner of obtaining the video includesany one of the following: obtaining the video locally from the networkdevice; obtaining the video from the other network device. Specifically,after the request forwarding module 32 forwards the second request forthe video from the user equipment to the other network device, the othernetwork device will transmit a response to the second request to thenetwork device. The response may include relevant information about therequested video, e.g., title of the video, serial number of the video,etc. The first determining module 33 obtains the relevant informationabout the requested video from the response to determine whether thevideo is locally stored. When the first determining module 33 determinesthat the video is locally stored, the first determining module 33determines to obtain the video locally; when the first determiningmodule 33 determines that the video is not stored locally, the firstdetermining module determines to obtain the video from said othernetwork.

In an embodiment, a module comprised in the first determining module 33and configured to determine identification information of the videobased on the response to the second request received from the othernetwork device, hereinafter shortly referred to as an identificationdetermining module 331 (not shown), first determines identificationinformation of the video based on a response to the second request,received from the other network device. In an embodiment, the othernetwork device may include relevant information of the video, e.g., thetitle of the video and the serial number of the video, in the response.Then, the identification determining module 331 may obtain the relevantinformation of the video through the response and use the relevantinformation as identification information of the video. In a preferredembodiment, the response to the second request includes video headerinformation of the video, wherein the video header information includesvideo content. Then, the identification determining module 331 mayobtain the video header information of the video through the responseand obtain a video content with a first length from the video headerinformation. Next, the identification determining module 331 performsHash calculation to the video content with the first length to obtain aHash value that may uniquely identify the video, and uses the Hash valueas the identification information of the video. It should be noted thatfor the same video, it may have a different video title or video numberor other relevant information in a different other network device.Therefore, respective responses of respective other network devices tothe second request for the video may include mutually different relevantinformation. In other words, the relevant information of the videocannot maintain unique among a plurality of other network devices. Onthe contrary, because video contents of the same video stored inrespective other network devices are identical, the Hash value obtainedfrom performing Hash calculation to the video content with the firstlength is identification information of the video which maintains uniqueamong a plurality of other network devices.

Here, the first length may be preset and adjusted according to actualneeds. In a preferred embodiment, the apparatus for video transmissionfurther comprises a module configured to set a value of the first lengthaccording to a video type (hereinafter referred to a first lengthsetting module 35 (not shown); the first length setting module 35 mayalso set the value of the first length according to a video type. Forexample, the first length setting module 35 may set the first length tobe 500 bytes for the video type of MP4 format, while set the firstlength to be 300 bytes for the video type of FLV format. Those skilledin the art should understand that relevant depictions of the video typeand the first length are only exemplary, not limitative. Various kindsof other video types and the values of first length are existent withoutdeparting from the spirit or scope of the present invention, which areincorporated here by reference.

Next, a module comprised in the first determining module 33 andconfigured to determine whether the video is stored locally (hereinafterreferred to as the second determining module 332 (not shown)) determineswhether the video is stored locally in the network device based on theidentification information. For example, the second determining module332 may determine whether the local storage includes a videocorresponding to the identification information by querying the localstorage. Then, a module comprised in the first determining module 33 andconfigured to determine the manner of obtaining the video based on theresult of determining whether the video is stored locally in the networkdevice (hereinafter referred to as a third determining module 333 (notshown)) determines the manner of obtaining the video based on a resultof determining whether the video is stored locally in the networkdevice. Specifically, when the second determining module 332 determinesthat the video is stored locally in the network device, the thirddetermining module 333 determines to obtain the video from the local;when the second determining module 332 determines that the video is notstored locally in the network device, the third determining module 333determines to obtain the video from the other network device.

In an embodiment, the apparatus for video transmission may furthercomprise a module configured to store the video locally based on thetimes of the second request by respective user equipments for the videowithin a first time threshold and based on the identificationinformation (hereinafter referred to as a video storing module 36 (notshown)); the video storing module 36 may store the video locally basedon the times of the second request by respective user equipments for thevideo within a first time threshold and based on the identificationinformation. Specifically, when the times of the second request byrespective user equipments for the video exceeds a certain specificthreshold A within the first time threshold, the video storing module 36may store the video locally. Moreover, the video storing module 36 makesthe locally stored video exactly correspond to the identificationinformation, such that the locally stored video may be queried accordingto the identification information. By locally storing the frequentlyrequested video, the network device may obtain the video from the localand provide it to the user equipment, without a need of furtherobtaining the video from other network device. It should be noted thatas mentioned above, the identification information may uniquely identifythe video among a plurality of other network devices. For example, theplurality of other network devices belong to different video serviceproviders, respectively; then when respective user equipments frequentlyrequest a video service provider A for the video, the video storingmodule 36 may locally store the video. Further, when subsequently a userequipment requests a video service provider B for the video, theapparatus for video transmission needn't request the video serviceprovider B for the video; instead, the video may be obtained locally andprovided to the user equipment. Therefore, compared with the prior art,the present invention increases share degree and further reducesbandwidth demand while reducing the difficulty of network deployment.

Here, the first time threshold and the specific threshold A mentionedabove may be preset and may be dynamically adjusted according to actualneeds.

In a further embodiment, the apparatus for video transmission furthercomprises a module configured to delete the video from the local basedon times of the second request by respective user equipments for thevideo within a second time threshold and based on the identificationinformation (hereinafter referred to as a video deleting module 37 (notshown)); the video deleting module 37 deletes the video from the localbased on times of the second request by respective user equipments forthe video within a second time threshold and based on the identificationinformation. Specifically, when the times of the second request byrespective user equipments for the video within the second timethreshold is less than a certain specific threshold B, the videodeleting module 37 deletes the video corresponding to the identificationinformation from the local. Here, the second time threshold and thespecific threshold B mentioned above may be preset and may bedynamically adjusted according to actual needs.

FIG. 2 illustrates an instance of an apparatus for video transmissionaccording to another aspect of the present invention. In this example,the network device D1 will receive a second request for a video V1 fromthe user equipment UE1, the second request being transmitted based on aresponse of other network device 0D2 to a first request by the userequipment UE1 for the video V1 on the other network device 0D2.

First, in step S21, the user equipment UE1 may transmit a first requestfor a video V1 on the other network device 0D2 to the network device 0D2via a network or via a specific interface with the other network device0D2. The first request for example may be a http request.

In step S22, the other network device 0D2 may transmit a response to thefirst request to the user equipment UE1 via the network or via thespecific interface with the user equipment UE1. The response may includean address that is connected to the network device D1 directly or by wayof for example being redirected. For example, the response may include adynamic URL that may be redirected to the network device D1.

In step S23, the user equipment UE1 transmits a second request for thevideo V1 to the network device D1 according to the method above based onthe address connectable to the network device D1 included in theresponse.

In step S24, the network device D1 forwards the second request to othernetwork device corresponding to the second request. Here, the othernetwork device corresponding to the second request refers to othernetwork device to which the first request by the user equipment UE1 forthe video V1 is transmitted, i.e., other network device 0D2. In thisexample, the request forwarding module 32 in the network device D1forwards the second request to the other network device 0D2 according tothe method above.

Next, in step S25, the other network device 0D2 transmits a response tothe second request to the network device D1 according to the methodabove, the response including video header information of the video V1,the video header information including video content of the video V1.

In step S26, the identification determining module 331 in the networkdevice D1 obtains the video content of the video with a first lengthfrom the video header information included in the response according tothe method above based on the response to the second request receivedfrom the other network device 0D2, performs Hash calculation to thevideo content, and determines the obtained Hash value as identificationinformation of the video V1. Next, the second determining module 332 inthe network device D1 determines whether the video V1 is stored locallyaccording to the method above based on the identification information.Moreover, the third determining module 333 in the network device D1determines a manner of obtaining the video V1 based on a result ofdetermining whether the video V1 is stored locally. In other words, whenthe video V1 is stored locally, the third determining module determinesto obtain the video V1 from its local storage; while when the video V1is not stored locally, the third determining module 333 determines toobtain the video V1 from the other network device 0D2.

In this example, supposing that the second determining module 332 in thenetwork device D1 determines that the video V1 is stored locally, thethird determining module 333 determines that the video V1 is obtainedlocally.

Next, in step S27, the transmitting module 34 in the network device D1transmits the video V1 obtained locally to the user equipment UE1.

It should be noted that the present disclosure may be implemented insoftware and/or a combination of software and hardware. For example,each module of the present disclosure may be implemented by anapplication-specific integrated circuit (ASIC) or any other similarhardware device. In one embodiment, the software program of the presentdisclosure may be executed through a processor to implement the steps orfunctions as mentioned above. Likewise, the software program (includingrelevant data structure) of the present disclosure may be stored in acomputer readable recording medium, e.g., RAM memory, magnetic or opticdriver or soft floppy or similar devices. Additionally, some steps orfunctions of the present disclosure may be implemented by hardware, forexample, a circuit cooperating with the processor so as to implementvarious steps or functions.

Further, a portion of the present disclosure may be applied as acomputer program product, for example, a computer program instruction,which, when executed by the computer, may invoke or provide a methodand/or technical solution according to the present disclosure throughoperations of the computer. Further, the program instruction invokingthe method of the present disclosure may be stored in a fixed or mobilerecording medium, and/or transmitted through broadcast or data flow inother signal bearer media, and/or stored in a working memory of acomputer device which operates based on the program instruction. Here,in an embodiment according to the present disclosure, an apparatuscomprises a memory for storing a computer program instruction and aprocessor for executing the program instruction, wherein when thecomputer program instruction is executed by the processor, the apparatusis triggered to run the methods and/or technical solutions according toa plurality of embodiments of the present disclosure.

To those skilled in the art, it is apparent that the present disclosureis not limited to the details of the above exemplary embodiments, andthe present disclosure may be implemented with other embodiments withoutdeparting from the spirit or basic features of the present disclosure.Thus, in any way, the embodiments should be regarded as exemplary, notlimitative; the scope of the present disclosure is limited by theappended claims, instead of the above depiction. Thus, all variationsintended to fall into the meaning and scope of equivalent elements ofthe claims should be covered within the present disclosure. No referencesigns in the claims should be regarded as limiting the involved claims.Besides, it is apparent that the term “comprise” does not exclude otherunits or steps, and singularity does not exclude plurality. A pluralityof units or modules stated in a system claim may also be implemented bya single unit or module through software or hardware. Terms such as thefirst and the second are used to indicate names, but do not indicate anyparticular sequence.

The invention claimed is:
 1. A method for video transmission in anetwork device, wherein the video is initially stored in one or moreother network devices, wherein the method comprises: receiving a secondrequest for a video from a user equipment; forwarding the second requestto an other network device corresponding to the second request;determining an obtaining manner for the video based on a response to thesecond request as received from the other network device; sending thevideo obtained based on said obtaining manner for the video to the userequipment, wherein the user equipment sends a first request for thevideo to the other network device.
 2. The method according to claim 1,wherein the receiving a second request for a video from a user equipmentcomprises: receiving a second request for the video from a userequipment, said second request being transmitted based on a response ofthe other network device to a first request by the user equipment forthe video on said other network device.
 3. The method according to claim1, wherein the determining an obtaining manner for the video based on aresponse to the second request as received from the other network devicecomprises: determining identification information of the video based ona response to the second request as received from the other networkdevice; determining whether the video is stored locally based on theidentification information; determining an obtaining manner for thevideo based on the result of determining whether the video is storedlocally.
 4. The method according to claim 3, wherein the determiningidentification information of the video based on a response to thesecond request as received from the other network device comprises:obtaining video content for determining identification information ofthe video from video header information included in the response,wherein the video content has a first length; determining a Hash valueobtained from calculation based on the video content as theidentification information of the video.
 5. The method according toclaim 4, further comprising: setting a value of the first length basedon a video type.
 6. The method according to claim 3, further comprising:storing the video locally based on times of second request for the videoby respective user equipments within a first time threshold and based onthe identification information.
 7. The method according to claim 3,further comprising: removing the video from local storage based on timesof second request for the video by respective user equipments within asecond time threshold and based on the identification information. 8.The method according to claim 1, wherein the obtaining manner for thevideo comprises any one of the following: obtaining the video from saidnetwork device locally; obtaining the video from said other networkdevice.
 9. An apparatus for video transmission in a network device,wherein the video is initially stored in one or more other networkdevices, wherein the apparatus comprises: at least one processor; and atleast one memory including computer program code, the at least onememory and the computer program code configured to, with the at leastone processor, cause the apparatus to at least: receive a second requestfor a video from a user equipment; forward the second request to another network device corresponding to the second request; determine anobtaining manner for the video based on a response to the second requestas received from the other network device; and send the video obtainedbased on the obtaining manner for the video to the user equipment,wherein the user equipment sends a first request for the video to theother network device.
 10. The apparatus according to claim 9, whereinthe at least one memory and the computer program code are furtherconfigured to, with the at least one processor, cause the apparatus to:receive a second request for the video from a user equipment, saidsecond request being transmitted based on a response of the othernetwork device to a first request by the user equipment for the video onsaid other network device.
 11. The apparatus according to claim 9,wherein the at least one memory and the computer program code arefurther configured to, with the at least one processor, cause theapparatus to: determine identification information of the video based ona response to the second request as received from the other networkdevice; determine whether the video is stored locally based on theidentification information; and determine an obtaining manner for thevideo based on a result of determining whether the video is storedlocally.
 12. The apparatus according to claim 11, wherein the at leastone memory and the computer program code are further configured to, withthe at least one processor, cause the apparatus to: obtain video contentfor determining identification information of the video from videoheader information included in the response, wherein the video contenthas a first length; and determine a Hash value obtained from calculationbased on the video content as the identification information of thevideo.
 13. The apparatus according to claim 12, wherein the at least onememory and the computer program code are further configured to, with theat least one processor, cause the apparatus to: set a value of the firstlength based on a video type.
 14. The apparatus according to claim 11,wherein the at least one memory and the computer program code arefurther configured to, with the at least one processor, cause theapparatus to: store the video locally based on times of second requestfor the video by respective user equipments within a first timethreshold and based on the identification information.
 15. The apparatusaccording to claim 11, wherein the at least one memory and the computerprogram code are further configured to, with the at least one processor,cause the apparatus to: remove the video locally based on times ofsecond request for the video by respective user equipments within asecond time threshold and based on the identification information. 16.The apparatus according to claim 9, wherein the obtaining manner for thevideo comprises any one of the following: obtaining the video from saidnetwork device locally; obtaining the video from other network device.